package com.techsoul.module.tms.pojo.vo;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.techsoul.module.accounting.pojo.vo.AccountingApVo;
import com.techsoul.module.accounting.pojo.vo.AccountingArVo;
import com.techsoul.module.tms.pojo.param.FreightVehicleDistributionSaveParam;
import lombok.Data;
import lombok.experimental.Accessors;


/**
 * FreightVehicleDispatchVo
 *
 * @author zhaowei
 * @since 2021-06-19
 */
@Data
@Accessors(chain = true)
public class FreightVehicleDispatchVo {
    /**
     * 记录 ID，系统自动产生
     */
    private String id;
    private List<FreightVehicleDistributionSaveParam> distributionList;
    private List<AccountingApVo> apList;

    private String destinationName;

    private BigDecimal accountPayable;

    private String departureName;
    /**
     * 司机付款列表
     */
    private List<AccountingArVo> arList;

    private BigDecimal loadingRate;

    private String driverName;
    private String vehicleIdentity;
    private String distributorDeptSite;
    private String voyagesNo;

    private String carrierName;

    private String chargeAdjustType;

    private String dropOffAdd;
    private String driver;

    private String driverPhone;
    /**
     * 物流计划编号
     */
    private String purchaseOrderId;

    /**
     * 货主编号
     */
    private String publishCarrierId;

    /**
     * 货主名称
     */
    private String publishCarrier;

    /**
     * 发布范围
     */
    private String publishScope;

    /**
     * 提货城市
     */
    private String pickupCity;

    /**
     * 交货城市
     */
    private String deliveryCity;

    /**
     * 提货地址
     */
    private String pickupAddress;

    /**
     * 交货地址
     */
    private String deliveryAddress;

    private BigDecimal pickupLongitude;

    private BigDecimal pickupLatitude;

    private BigDecimal deliveryLongitude;

    private BigDecimal deliveryLatitude;

    /**
     * 货物名称
     */
    private String materialName;

    /**
     * 完成时间
     */
    private Date completeTime;

    /**
     * 运输路线代码
     */
    private String routeCode;

    /**
     * 提货日期
     */
    private Date pickupDate;

    /**
     * 交货日期
     */
    private Date deliveryDate;

    /**
     * 发布数量
     */
    private BigDecimal quantity;

    /**
     * 已被接单数量
     */
    private BigDecimal dispatchedQuantity;

    /**
     * 司机抢单数量总和
     */
    private BigDecimal bidQuantity;

    /**
     * 抢单司机总人数
     */
    private Integer bidDriverCount;

    private String deliveryType;

    /**
     * 1:FTL 整车 2：LTL 零担 司机任务类型
     */
    private String orderTypeNo;

    private String autoDispatchFlag;

    /**
     * 4 按路线结算 5 按里程 6 按区域结算
     */
    private String routeDistanceType;

    /**
     * round 来回 depart 单程 return 回程
     */
    private String routeType;

    /**
     * 里程数
     */
    private BigDecimal mile;

    private BigDecimal carrierFee;

    /**
     * TK 运输 BR 撮合运输
     */
    private String jobType;

    private String settled;

    /**
     * 11 一装一卸 12 一装两卸 13 一装三卸 以此类推
     */
    private String loadMethod;

    /**
     * 每吨运费出价
     */
    private BigDecimal unitPricePayable;

    private String status;

    private String estDeliveryDays;

    /**
     * 备注
     */
    private String remark;

    /**
     * 是否有效，数据字典 yn_type，1 表示是，0 表示否，默认0
     */
    private String isValid;

    /**
     * 创建人
     */
    private String createBy;

    /**
     * 创建时间
     */
    private Date createDate;

    /**
     * 更新人
     */
    private String updateBy;

    /**
     * 更新时间
     */
    private Date updateDate;

    private String vehicleNo;
    private String customerNo;
    private String  customerName;
    private String  consigneePhone;
    private String  consigneeNo;
    private String  consigneeName;
    private String  freightOrderNo;
    private String  vehicleModel;
    private Double publishDriverPrice;
    private Double  totWeight;
    private String ftlRequestVehicleType;
    private String ftlRequestVehicleLength;
    private String  settledYn;
    private Date  estPickupDate;
    private Date  estDeliveryDate;
    private String  departmentNo;
    private String  site;

    private String  dangerType;

    private String  carrierNo;

    private String  shipmentLocation;

    private String  destination;
}
